//
//  OtherLoginManager.m
//  UniversalApp
//
//  Created by 胡双喜 on 2018/6/22.
//  Copyright © 2018年 邓超. All rights reserved.
//

#import "OtherLoginManager.h"

#import <WXApi.h>
#import <TencentOpenAPI/QQApiInterface.h>



@implementation OtherLoginManager
SINGLETON_FOR_CLASS(OtherLoginManager)
    
- (void)otherLogin {
    
    NSArray *titleArray = @[@"QQ",@"微信",@"微博"];
    for (NSInteger i = 0; i < 3; i++ ) {
        
        UIButton *typeBtn = [UIButton buttonWithType:UIButtonTypeCustom];
        [typeBtn setTitle:titleArray[i] forState:UIControlStateNormal];
        [typeBtn setBackgroundColor:[UIColor orangeColor]];
        [typeBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
        [typeBtn addTarget:self action:@selector(typeBtnClick:) forControlEvents:UIControlEventTouchUpInside];
        typeBtn.tag = i + 100;
        [typeBtn setFrame:CGRectMake(30, 200 + i * 60, 100, 40)];
        
       
    }
    
    // 判断是否安装了微信和QQ
    if ([WXApi isWXAppInstalled]) {
        
        NSLog(@"安装了微信，可以正常登录");
    }else {
        
        NSLog(@"为了更好的通过苹果审核，未安装微信时，请把微信按钮隐藏");
    }
    
    if ([QQApiInterface isQQInstalled]) {
        
        NSLog(@"安装了QQ，可以正常登录");
    }else {
        
        NSLog(@"为了更好的通过苹果审核，未安装QQ时，请把QQ按钮隐藏");
    }
}
    
- (void)typeBtnClick:(UIButton *)sender {
    
   
}
    
#pragma mark -- 第三方登录

    
- (void)alertLoginWithError:(NSError *)error
    {
        
        NSString *result = nil;
        if (!error) {
            result = [NSString stringWithFormat:@"登录成功"];
        }
        else{
            NSMutableString *str = [NSMutableString string];
            if (error.userInfo) {
                for (NSString *key in error.userInfo) {
                    [str appendFormat:@"%@ = %@\n", key, error.userInfo[key]];
                }
            }
            if (error) {
                result = [NSString stringWithFormat:@"登录取消"];
            }
            else{
                result = [NSString stringWithFormat:@"登录失败"];
            }
        }
        
        NSLog(@"%@",result);
    }

    
-(void)login{
    //例如QQ的登录
    [ShareSDK getUserInfo:SSDKPlatformTypeQQ
           onStateChanged:^(SSDKResponseState state, SSDKUser *user, NSError *error)
     {
         if (state == SSDKResponseStateSuccess)
         {
             
             NSLog(@"uid=%@",user.uid);
             NSLog(@"%@",user.credential);
             NSLog(@"token=%@",user.credential.token);
             NSLog(@"nickname=%@",user.nickname);
//             　　　　　　　　//在这里面实现app界面的跳转：
//             　　　　　　　　1.如果用户将qq和app已经进行了绑定，直接登录成功就能拿到用户的数据；
//             　　　　　　　　2.如果用户没有将qq和app进行绑定，那么绑定成功后就会从服务器获取到token，这个token是用来获取用户数据的，很重要。
//             　　　　　　　　总之：每一个用户都有自己唯一的标识，使用第三方登录，第三方是不知道用户的账号和密码的，那么用户必须先绑定，绑定成功后，服务器返回这个标识，之后服务器通过这个标识才能获取到用户的数据。
         } else { NSLog(@"%@",error); } }];
}
@end
